home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / A-Monthly Disks / (c)aas.d64 / act 1 (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  6KB  |  174 lines

  1. 100 REM KANGAROOS (ACT I) BY DENNIS DUNK
  2. 110 POKE53280,0:POKE53281,5
  3. 120 PRINT"[147][146]";
  4. 130 FOR I=1TO24:PRINT"                                        [146]";:NEXT
  5. 140 P=2040:V=53248:REM P=POINTER V=VIC
  6. 150 FORK=0TO16 STEP2:POKEV+K,0:NEXTK:REM SET X TO ZERO
  7. 160 FORK=1TO15 STEP2:POKEV+K,0:NEXTK:REM SET Y TO ZERO
  8. 170 SN=200:POKEP+2,SN:REM SPRITE # TO  POINTER #2
  9. 180 POKEV+41,12:REM SPRITE #2 COLOR
  10. 190 POKEV+29,4:POKEV+23,4:REM EXPAND
  11. 200 POKEV+21,4:REM TURN ON SPRITE #2
  12. 210 Y=199:POKEV+5,Y:REM Y POSITION
  13. 220 GOSUB 1730
  14. 230 X=0:FORX=0TO13:POKEV+4,X:GOSUB1710:Y=Y-1:POKEV+5,Y:NEXTX:REM UP
  15. 240 X=0:FORX=14TO28:POKEV+4,X:GOSUB1710:Y=Y+1:POKEV+5,Y:NEXTX:REM DOWN
  16. 250 SYS 37120:REM MUSIC
  17. 260 SN=SN+1:POKEP+2,SN:C=C+1:GOSUB1720
  18. 270 IFSN=214THEN PRINT"[146]I'M A KANGAROO, MATE"
  19. 280 IFSN=214 THEN PRINT"BUT DON'T TIE ME DOWN!":FORD=1TO2000:NEXTD
  20. 290 IF SN=215 THEN PRINT"BECAUSE I'M A HOPPY,"
  21. 300 IF SN=215 THEN PRINT"BOPPY KIND OF KANGAROO."
  22. 310 X=X+1:POKEV+4,X
  23. 320 IF C<31 THEN 260
  24. 330 PRINT"[147][146]";:RO=0
  25. 340 FOR I=1TO24:PRINT"                                        [146]";:NEXT
  26. 350 POKEP+7,135:POKEV+46,1:POKEV+23,132:POKEV+29,132:POKEV+14,0:POKEV+15,110
  27. 360 POKEV+21,132:CX=0:CY=110:REM CLOUD
  28. 370 SN=231:C=0:RP=RP+1
  29. 380 SN=SN+1:POKEP+2,SN:C=C+1:GOSUB1720
  30. 390 X=X+2:POKEV+4,X
  31. 400 IF C<5  THEN 380
  32. 410 IF RP<2  THEN 370
  33. 420 SN=236:C=0:REM SPIN
  34. 430 SN=SN+1:POKEP+2,SN:C=C+1:GOSUB1720
  35. 440 X=X+3:POKEV+4,X:CX=CX+1:POKEV+14,CX
  36. 450 IF C<18  THEN 430
  37. 460 SN=200:C=0:POKEP+7,136:CY=CY-2:POKEV+15,CY
  38. 470 SN=SN+1:POKEP+2,SN:C=C+1:GOSUB1720
  39. 480 X=X+2:POKEV+4,X:CX=CX+1:POKEV+14,CX
  40. 490 IF C<6  THEN 470
  41. 500 SN=206:C=0:POKEP+7,135:CY=CY-2:POKEV+15,CY
  42. 510 SN=SN+1:POKEP+2,SN:C=C+1:GOSUB1720
  43. 520 X=X+3:POKEV+4,X:CX=CX+1:POKEV+14,CX
  44. 530 IF C<4  THEN 510
  45. 540 SN=255:POKEP+2,SN:GOSUB1720
  46. 550 SN=184:C=0
  47. 560 SN=SN+1:POKEP+2,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  48. 570 IF C<3 THEN 560
  49. 580 SN=208:C=0:POKEP+7,136:CY=CY-2:POKEV+15,CY
  50. 590 SN=SN+1:POKEP+2,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  51. 600 IF C<3 THEN 590
  52. 610 SN=255:POKEP+2,SN:GOSUB1720
  53. 620 POKEV+40,15:REM SPRITE #1 COLOR
  54. 630 SN=165:POKEP+1,SN:POKEV+21,134:REM TURN ON SPRITE # 1
  55. 640 SY=Y:SX=X:X=X+10:Y=Y+3:POKEV+3,Y:POKEV+2,X:REM SAVE X & Y SET-SPRITE #1
  56. 650 SN=165:C=0:REM RISE FROM POUCH
  57. 660 SN=SN+1:POKEP+1,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  58. 670 IF C<7 THEN 660
  59. 680 IF Y=221 THEN 700
  60. 690 Y=Y+1:POKEV+3,Y:GOSUB1710:GOTO 680
  61. 700 SN=215:POKEP+1,SN:GOSUB1720
  62. 710 SN=216:POKEP+1,SN:GOSUB1720
  63. 720 SN=217:POKEP+1,SN:GOSUB1720
  64. 730 RP=0:J=X:POKEP+7,135:CY=CY-2:POKEV+15,CY
  65. 740 FORK=J TO J-15 STEP-1:X=X-1:POKEV+2,X:GOSUB1710:CX=CX+1:POKEV+14,CX
  66. 750 Y=Y-1:POKEV+3,Y:NEXTK:REM UP
  67. 760 J=X:POKEP+7,136
  68. 770 FORK=J TO J-15 STEP-1:X=X-1:POKEV+2,X:GOSUB1710:CX=CX+1:POKEV+14,CX
  69. 780 Y=Y+1:POKEV+3,Y:NEXTK:REM DOWN
  70. 790 RP=RP+1:IF RP<3 THEN 740
  71. 800 SN=216:POKEP+1,SN:C=C+1:GOSUB1720
  72. 810 SN=215:POKEP+1,SN:C=C+1:GOSUB1720
  73. 820 SN=255:POKEP+1,SN:C=C+1:GOSUB1720
  74. 830 POKEV+39,15:REM SPRITE #0 COLOR
  75. 840 SN=165:POKEP+0,SN:POKEV+21,135:REM TURN ON SPRITE # 0
  76. 850 Y=SY:X=SX:X=X+10:Y=Y+3:POKEV+1,Y:POKEV+0,X:REM RESET X & Y SET-SPRITE #0
  77. 860 SN=165:C=0:REM RISE FROM POUCH
  78. 870 SN=SN+1:POKEP+0,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  79. 880 IF C<7 THEN 870
  80. 890 IF Y=221 THEN 910
  81. 900 Y=Y+1:POKEV+1,Y:GOSUB1710:GOTO 890
  82. 910 SN=210:C=0:POKEP+7,135:CY=CY-2:POKEV+15,CY
  83. 920 POKEP+0,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  84. 930 IF C<4 THEN SN=SN-1:GOTO 920
  85. 940 RP=0:J=X:POKEP+7,136:CY=CY-2:POKEV+15,CY
  86. 950 FORK=JTOJ+15:X=X+1:POKEV+0,X:GOSUB1710:IF X=255THENPOKEV+16,1:X=0
  87. 960 Y=Y-1:POKEV+1,Y:CX=CX+1:POKEV+14,CX:NEXTK:REM UP
  88. 970 FORK=JTOJ+15:X=X+1:POKEV+0,X:GOSUB1710:IF X=255THENPOKEV+16,1:X=0
  89. 980 Y=Y+1:POKEV+1,Y:CX=CX+1:POKEV+14,CX:NEXTK:REM DOWN
  90. 990 RP=RP+1:IF RP<3 THEN 950
  91. 1000 SN=216:POKEP+0,SN:C=C+1:GOSUB1720:POKEP+7,135
  92. 1010 SN=215:POKEP+0,SN:C=C+1:GOSUB1720
  93. 1020 SN=255:POKEP+0,SN:C=C+1:GOSUB1720
  94. 1030 GOSUB 1040:GOSUB 1200:GOSUB 1310:GOTO 1390
  95. 1040 SN=236:C=0:REM BOP LEFT
  96. 1050 SN=SN+1:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  97. 1060 IF C<8 THEN 1050
  98. 1070 SN=214:C=0:CY=CY-2:POKEV+15,CY
  99. 1080 SN=SN+1:IF SN=218 THEN SN=219
  100. 1090 POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  101. 1100 IF CX=>252THEN CX=0:POKEV+16,129:POKEV+14,CX
  102. 1110 IF C<12 THEN 1080
  103. 1120 SN=231:C=0:CY=CY-2:POKEV+15,CY:POKEP+7,136
  104. 1130 SN=SN+1:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  105. 1140 IF C<4 THEN 1130
  106. 1150 SN=246:C=0:CY=CY-2:POKEV+15,CY:POKEP+7,135
  107. 1160 SN=SN-1:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  108. 1170 IF C<8 THEN 1160
  109. 1180 SN=255:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:POKEP+7,136
  110. 1190 RETURN
  111. 1200 SN=211:C=0:REM BOP RIGHT
  112. 1210 SN=SN-1:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  113. 1220 IF C<4 THEN 1210
  114. 1230 SN=183:C=0:CY=CY-2:POKEV+15,CY:POKEP+7,136
  115. 1240 SN=SN+1:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  116. 1250 IF C<15 THEN 1240
  117. 1260 SN=206:C=0:CY=CY-2:POKEV+15,CY:POKEP+7,135
  118. 1270 SN=SN+1:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  119. 1280 IF C<4 THEN 1270
  120. 1290 SN=255:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720
  121. 1300 RETURN
  122. 1310 SN=236:C=0:CY=CY-2:POKEV+15,CY:POKEP+7,136:REM ALL SPIN
  123. 1320 SN=SN+1:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  124. 1330 IF C<17  THEN 1320
  125. 1340 SN=206:C=0:CY=CY-2:POKEV+15,CY:POKEP+7,135
  126. 1350 SN=SN+1:POKEP+2,SN:POKEP+1,SN:POKEP,SN:C=C+1:GOSUB1720:CX=CX+1:POKEV+14,CX
  127. 1360 IF C<4  THEN 1350
  128. 1370 SN=255:POKEP+2,SN:POKEP+1,SN:POKEP,SN:GOSUB1720
  129. 1380 RETURN
  130. 1390 SN=236:C=0:POKEP+7,136:CX=CX+4:POKEV+14,CX:REM BIG 1 EXITS
  131. 1400 SN=SN+1:POKEP+2,SN:C=C+1:GOSUB1720
  132. 1410 IF C<8  THEN 1400
  133. 1420 X=SX:Y=SY:RP=0:POKEV+21,7
  134. 1430 FORK=XTOX-18STEP-1:POKEV+4,K:GOSUB1710:Y=Y-1:POKEV+5,Y:NEXTK:REM UP
  135. 1440 X=X-18
  136. 1450 FORK=XTOX-18STEP-1:POKEV+4,K:GOSUB1710:Y=Y+1:POKEV+5,Y:NEXTK:REM DN
  137. 1460 X=X-18:RP=RP+1
  138. 1470 IF RP<4 THEN 1430
  139. 1480 X=X-1:POKEV+4,X:GOSUB1710
  140. 1490 IF X>0 THEN 1480
  141. 1500 POKEV+21,3
  142. 1510 GOSUB 1200:GOSUB 1310:GOSUB 1040:REM 2 SMALL DANCERS
  143. 1520 YB=200:YS=221:CS=173:CU=CS:CF=179:CD=CF:POKEV+16,1:X=0
  144. 1530 POKEP+3,180:POKEV+42,7:POKEV+6,12:POKEV+7,YB:REM BALLOON
  145. 1540 POKEP+7,176:POKEV+46,1:POKEV+14,1:POKEV+15,YS:REM STRING
  146. 1550 POKEV+21,139
  147. 1560 FORX=0TO100STEP2:POKEV+6,X+13:POKEV+14,X+1:POKEV+7,YB:POKEV+15,YS:YB=YB-1
  148. 1570 IF CU=CF THEN CD=CD-1:POKEP+7,CU
  149. 1580 IF CU<>CF THEN CU=CU+1:POKEP+7,CU
  150. 1590 IF CD=CS THEN CU=173:CD=179
  151. 1600 YS=YS-1:GOSUB1710:NEXTX
  152. 1610 FORX=101TO197STEP2:POKEV+6,X+13:POKEV+14,X+1:POKEV+7,YB:POKEV+15,YS:YB=YB-3
  153. 1620 IF CU=CF THEN CD=CD-1:POKEP+7,CU
  154. 1630 IF CU<>CF THEN CU=CU+1:POKEP+7,CU
  155. 1640 IF CD=CS THEN CU=173:CD=179
  156. 1650 YS=YS-3:GOSUB1710:NEXTX
  157. 1660 POKEV+21,3
  158. 1670 PRINT"PREPARING ACT II"
  159. 1680 FOR D=1TO750:NEXT D
  160. 1690 F$="ACT 2":PRINT"[147] LOAD"+CHR$(34)+F$+CHR$(34)+",8": PRINT "RUN"
  161. 1700 POKE198,4: POKE631,19: POKE632,13: POKE633,13: POKE634,13:END
  162. 1710 FOR D=1TO40:NEXT D:RETURN
  163. 1720 FOR D=1TO100:NEXT D:RETURN
  164. 1730 REM BONG
  165. 1740 S=54272:REM START OF SOUND CHIP
  166. 1750 POKE S+24,15:REM FULL VOLUME
  167. 1760 G=00:H=10:REM SET VOICES
  168. 1770 POKE S+1,G:N=N+1:REM VOICE 1 FREQ
  169. 1780 POKE S+5,9:POKE S+6,12:REM ADSR
  170. 1790 POKE S+15,H:REM VOICE TWO FREQUENCY
  171. 1800 FOR N=1TO50:POKE S+4,21:REM 21=17+4, TURN ON TRI WAVE + RING MOD, NO. HITS
  172. 1810 FOR T=1TO30:NEXT:POKE S+4,20:REM    TIME BETWEEN CHIMES
  173. 1820 RETURN
  174.